Most large data projects are built incrementally. For example, with an enterprise data warehouse project, there may be multiple changes to data models over time. Unfortunately, the changes may have a ripple effect on code and consumers who already reference a previous version of the data model.
To deal with this, developers sometimes use a data model that is more resilient to changes. In such a data model, changes may be made to the data model without breaking existing code. Unfortunately, such models may be hard to understand, difficult to validate, and difficult to update for new changes.
The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one exemplary technology area where some embodiments described herein may be practiced.